package cl.mt.mvc.action;

import java.sql.Date;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import org.apache.log4j.LogManager;
import org.apache.log4j.Logger;
import org.apache.struts.action.Action;
import org.apache.struts.action.ActionForm;
import org.apache.struts.action.ActionForward;
import org.apache.struts.action.ActionMapping;
import org.apache.struts.action.ActionRedirect;


import cl.mt.data.DataEmpresa;
import cl.mt.data.DataUsuario;
import cl.mt.dto.DTOEmpresa;
import cl.mt.dto.DTOUsuario;
import cl.mt.mvc.helper.EmpresaHelper;
import cl.mt.mvc.helper.oferente.DatosUsuarioHelper;


public class RegistroUsuarioAction extends Action {

	private Logger log = LogManager.getLogger(RegistroUsuarioAction.class.getName());
	
	  public ActionForward execute (ActionMapping mapping, ActionForm form,

            HttpServletRequest request, HttpServletResponse response) {
			
		  String forward= "ERROR";
		  log.debug("RegistroUsuarioAction..........");
		 
		  Integer idEmpresa = 151;  
		 
		  String accion= "inicio";
		  log.debug("campo accion:["+accion+"]");
		  
		  if(request.getParameter("accion")!=null){
		  	accion=request.getParameter("accion");
		  }
		 
		  if("inicio".equals(accion)){
			  	log.debug("cargar  el formulario.");				
			  	forward="SUCCESS";
		
			  	log.debug("cargar info del usuario para el formulario.");
				
				//  DataEmpresa dtaEmpresa = new DataEmpresa();			
			  	EmpresaHelper empresa = new EmpresaHelper();
			  	Long idEmpresa2 = (long) 151; 
				DTOEmpresa dtoEmpresa = empresa.getEmpresaById(idEmpresa2);
					  
				if(dtoEmpresa != null){
				  log.debug("entro if");
				  log.debug("Razon Social: "+dtoEmpresa.getRazonsocial());
				  request.setAttribute("razonSocialInput", dtoEmpresa.getRazonsocial());
				  request.setAttribute("nomFantasiaInput", dtoEmpresa.getNombreFantasia());
				  request.setAttribute("rutInput",dtoEmpresa.getRut());
				  request.setAttribute("giroInput",dtoEmpresa.getGiro());
				  request.setAttribute("calleInput", dtoEmpresa.getDireccionCalle());
				  request.setAttribute("telefonoInput", dtoEmpresa.getTelefono());	 
				  request.setAttribute("emailInput", dtoEmpresa.getMail());
				  request.setAttribute("sitioWebInput", dtoEmpresa.getUrlWeb());
				  request.setAttribute("comunaInput", dtoEmpresa.getIdCiudad());
				  
				  forward="SUCCESS";
			}
		  }else if ("addUsuario".equals(accion)){
			  log.debug("Guardar datos del ususario");
			  
			   DTOUsuario dtoUsuario = new DTOUsuario();
			   dtoUsuario.setNombre(request.getParameter("nombreInput"));
			   dtoUsuario.setApellido(request.getParameter("apellInput"));
			   dtoUsuario.setUsername(request.getParameter("userInput"));
			   dtoUsuario.setRut(request.getParameter("rutInput"));
			   dtoUsuario.setMail(request.getParameter("mailInput"));
			   dtoUsuario.setPassword(request.getParameter("passInput"));
			   dtoUsuario.setCargo(request.getParameter("cargoInput"));
			   dtoUsuario.setCelular(request.getParameter("celInput"));
			   dtoUsuario.setIdOperadorTelefonico(new Integer(request.getParameter("ciaCelularInput")));
			   dtoUsuario.setTelefono(request.getParameter("fonoInputUser"));
			   dtoUsuario.setFax(request.getParameter("faxupdInput"));
			   dtoUsuario.setIdPerfil(Integer.getInteger(request.getParameter("perfilInputUser")));	
			  
			   dtoUsuario.setIdEmpresa(idEmpresa);
			  
			  
			   dtoUsuario.setFax(request.getParameter("faxInputUser"));
			   
			   DatosUsuarioHelper datosUsuarioHelper = new DatosUsuarioHelper();			   
			   int nuevoUsuario = datosUsuarioHelper.ingresaUsuario(dtoUsuario);
			   if(nuevoUsuario== 1){
					 ActionRedirect redirect =new ActionRedirect(mapping.findForward("inicio"));
					 return redirect;
				 }
			   forward="SUCCESS";
		  
		  }else{			  
			  log.debug("No hay accion a ejecutar.");
			  forward="ERROR";
		  }
		 return mapping.findForward(forward);		  
	  }
	  
}